/*
 * This file is part of KubeSphere Console.
 * Copyright (C) 2019 The KubeSphere Console Authors.
 *
 * KubeSphere Console is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Affero General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * KubeSphere Console is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with KubeSphere Console.  If not, see <https://www.gnu.org/licenses/>.
 */

module.exports = {
  'Account Role': 'Account Role',
  'Account Roles': 'Account Roles',
  'Alerting Messages Management': 'Alerting Message Management',
  'Alerting Messages View': 'Alerting Message Viewing',
  'Alerting Policies Management': 'Alerting Policy Management',
  'Alerting Policies View': 'Alerting Policy Viewing',
  'App Templates Management': 'App Template Management',
  'App Templates View': 'App Template Viewing',
  'Application Workloads Management': 'Application Workload Management',
  'Application Workloads View': 'Application Workload Viewing',
  'Authorization List': 'Permissions',
  'Authorization Settings': 'Authorization Settings',
  'Authorized Actions': 'Authorized Actions',
  'Authorized Users': 'Authorized Users',
  'ConfigMaps Management': 'ConfigMap Management',
  'ConfigMaps View': 'ConfigMap Viewing',
  'ServiceAccount Management': 'ServiceAccount Management',
  'ServiceAccount View': 'ServiceAccount Viewing',
  'Custom Monitoring View': 'Custom Monitoring Viewing',
  'Custom Monitoring Management': 'Custom Monitoring Management',
  Cluster: 'Cluster',
  'Cluster Members Management': 'Cluster Member Management',
  'Cluster Members View': 'Cluster Member Viewing',
  'Cluster Monitoring View': 'Cluster Monitoring Viewing',
  'Cluster Resources Management': 'Cluster Resource Management',
  'Cluster Role': 'Cluster Role',
  'Cluster Roles Management': 'Cluster Role Management',
  'Cluster Roles View': 'Cluster Role Viewing',
  'Clusters Management': 'Cluster Management',
  'Clusters View': 'Cluster Viewing',
  'Components Management': 'Component Management',
  'CRD Management': 'CRD Management',
  'Create Account Role': 'Create Account Role',
  'Create Cluster Role': 'Create Cluster Role',
  'Create Project Role': 'Create Project Role',
  'Create Role': 'Create Role',
  'Credentials Management': 'Credential Management',
  'Credentials View': 'Credential Viewing',
  'Default user role which allows a user to manage resources within the projects created by the user himself or invited by others. It does not allow the user to manage unauthorized resources in the cluster.':
    'Default user role which allows a user to manage resources within the projects created by the user himself or invited by others. It does not allow the user to manage unauthorized resources in the cluster.',
  'Depend on': 'Depends on',
  'DevOps Create': 'DevOps Project Creation',
  'DevOps Management': 'DevOps Project Management',
  'DevOps Members Management': 'DevOps Member Management',
  'DevOps Members View': 'DevOps Member Viewing',
  'DevOps Roles Management': 'DevOps Role Management',
  'DevOps Roles View': 'DevOps Role Viewing',
  'DevOps Settings': 'DevOps Settings',
  'DevOps View': 'DevOps Project Viewing',
  'Edit Account Role': 'Edit Account Role',
  'Edit Authorization': 'Edit Permissions',
  'Edit Cluster Role': 'Edit Cluster Role',
  'Edit Project Role': 'Edit Project Role',
  'Edit Role': 'Edit Role',
  'Federated Projects Management': 'Federated Project Management',
  'Invalid role name': 'Invalid role name.',
  'Invited Successfully': 'Invited successfully.',
  Member: 'Member',
  Modules: 'Modules',
  'Network Policies Management': 'Network Policy Management',
  'Network Policies View': 'Network Policy Viewing',
  'No Authorization': 'No Permission',
  'Nodes Management': 'Node Management',
  'Nodes View': 'Node Viewing',
  'Pipelines Management': 'Pipeline Management',
  'Pipelines View': 'Pipeline Viewing',
  'Platform Settings Management': 'Platform Settings Management',
  'Please input role name': 'Enter a role name.',
  'Please specify role authorization': 'Specify the role permissions.',
  'Project Details': 'Project Details',
  'Project Members Management': 'Project Member Management',
  'Project Members View': 'Project Member Viewing',
  'Project Resources Management': 'Project Resource Management',
  'Project Roles': 'Project Roles',
  'Project Roles Management': 'Project Role Management',
  'Project Roles View': 'Project Role Viewing',
  'Projects Create': 'Project Creation',
  'Projects Management': 'Project Management',
  'Projects View': 'Project Viewing',
  Role: 'Role',
  'Role Management': 'Role Management',
  'Role name exists': 'The role name already exists.',
  'Role Type': 'Role Type',
  Roles: 'Roles',
  roles: 'roles',
  'Roles Management': 'Role Management',
  'Roles View': 'Role Viewing',
  'Secrets Management': 'Secret Management',
  'Secrets View': 'Secret Viewing',
  'StorageClasses Management': 'StorageClass Management',
  'StorageClasses View': 'StorageClass Viewing',
  Terminating: 'Terminating',
  'Unable to delete preset role': 'Preset roles cannot be deleted.',
  'User Name': 'Username',
  'Users Management': 'User Management',
  'Users View': 'User Viewing',
  'Volume Snapshots Management': 'Volume Snapshot Management',
  'Volume Snapshots View': 'Volume Snapshot Viewing',
  'Volumes Management': 'Volume Management',
  'Volumes View': 'Volume Viewing',
  'Workspace App Repos Management': 'Workspace App Repository Management',
  'Workspace App Repos View': 'Workspace App Repository Viewing',
  'Workspace App Templates Management': 'Workspace App Template Management',
  'Workspace App Templates View': 'Workspace App Template Viewing',
  'Workspace Members Management': 'Workspace Member Management',
  'Workspace Members View': 'Workspace Member Viewing',
  'Workspace Roles Management': 'Workspace Role Management',
  'Workspace Roles View': 'Workspace Role Viewing',
  'Workspaces Management': 'Workspace Management',
  'Workspaces View': 'Workspace Viewing',
  'Workspace Groups': 'Department Management',
  'Workspace Groups Management': 'Workspace Group Management',
  'Workspace Groups View': 'Workspace Group Viewing',

  NO_AVAILABLE_ROLE: 'No role is available in the current project.',

  JOIN_PROJECT_PLACEHOLDER:
    'Invite users by username or email address to the project.',
  ROLE_PROJECTS_JOIN_TIP:
    'Enter a username or email address to invite a user to the project.',
  ROLE_DELETE_TIP:
    'The role is already bound to the user. You can unbind the role and try again.',
  ROLE_NO_AVAILABLE_TIP: 'No role is available in the current project.',
  ROLE_TYPE_DESC:
    'The role types are classified into cluster and project, the current role is authorized as the project scope.',
  DELETE_ROLE_TIP:
    'Are you sure you want to delete the role <strong>{resource}</strong>?',
  ROLE_USERS_TIP:
    'The role is bound to <strong>{count}</strong> users. Please unbind the users first.',
  ROLE_USER_TIP:
    'The role is bound to <strong>{count}</strong> user. Please unbind the user first.',
  ROLE_USER_GROUPS_TIP:
    'The role is bound to <strong>{count}</strong> department. Please unbind the department first.',

  RULE_WORKSPACES: 'Workspaces',
  RULE_KUBECTL: 'Kubectl',
  RULE_MONITORING: 'Monitoring Management',
  RULE_PROJECTS: 'Project Management',
  RULE_USERS: 'User Management',
  RULE_ACCOUNTS: 'Account Management',
  RULE_ROLES: 'Role Management',
  RULE_REGISTRYS: 'Image Registry',
  RULE_PERSISTENTVOLUMECLAIMS: 'Volume Management',
  RULE_STORAGECLASSES: 'Storage Class Management',
  RULE_IMAGES: 'Image Repository Management',
  RULE_NODES: 'Node Management',
  RULE_APP_CATALOG: 'Repository Management',
  RULE_REPOS: 'Repository Management',
  RULE_APPS: 'App Template',
  RULE_DEPLOYMENTS: 'Deployments',
  RULE_STATEFULSETS: 'StatefulSets',
  RULE_DAEMONSETS: 'DaemonSets',
  RULE_SERVICES: 'Service Management',
  RULE_ROUTES: 'Route Management',
  RULE_VIEW: 'View',
  RULE_CREATE: 'Create',
  RULE_EDIT: 'Edit',
  RULE_DELETE: 'Delete',
  RULE_ROLE_BINDING: 'Binding Roles',
  RULE_PODSCALE: 'Pod Scaling Management',
  RULE_SCALE: 'Scale out/in',
  RULE_MEMBERS: 'Member Management',
  RULE_MEMBER_ROLES: 'Member Role',
  RULE_COMPONENTS: 'Components',
  RULE_VOLUMES: 'Volumes',
  RULE_PODS: 'Pod Management',
  RULE_TERMINAL: 'Remote Terminal',
  RULE_APPLICATIONS: 'Applications',
  RULE_JOBS: 'Jobs',
  RULE_CRONJOBS: 'CronJobs',
  RULE_SECRETS: 'Secrets',
  RULE_CONFIGMAPS: 'ConfigMaps',
  RULE_DRAIN: 'Drain',
  RULE_CORDON: 'Cordon/Uncordon',
  RULE_TAINT: 'Taint Management',
  RULE_DEVOPS: 'DevOps Project Management',
  RULE_REGISTRIES: 'Image Registry',
  RULE_ORGANIZATIONS: 'Organization',
  RULE_INTERNET: 'Internet Access Management',
  RULE_LOGGING: 'Log Management',
  RULE_ALERTING: 'Alerting Management',
  RULE_MANAGE: 'Manage',
  RULE_ADVANCED: 'Advanced Settings',
  RULE_S2IBUILDERS: 'Image Builder',

  CLUSTER_SETTINGS_DESC:
    'Manage cluster settings and authorizations to workspaces & edit cluster information.',
  WORKSPACE_ROLE_NAME_TIP:
    'The role name is used as the identifier of the role.',
  ROLE_CREATE_TIP_TITLE: 'Next Step',
  ROLE_CREATE_TIP_MESSAGE:
    'You need to edit role permissions to create the role.',
  NODES_VIEW_DESC: 'View node information.',
  NODES_MANAGEMENT_DESC: 'Manage nodes and taints.',
  CRD_MANAGEMENT_DESC: 'View, modify and delele cluster CRDs.',
  COMPONENTS_MANAGEMENT_DESC: 'Manage cluster components.',
  CLUSTERS_VIEW_DESC: 'View clusters and cluster resources on the platform.',
  CLUSTERS_MANAGEMENT_DESC:
    'Create and delete clusters and manage resources in all clusters.',
  WORKSPACES_VIEW_DESC: 'View workspaces available to the user.',
  ROLES_VIEW_DESC: 'View roles on the platform.',
  USERS_VIEW_DESC: 'View users on the platform.',

  WORKSPACES_MANAGEMENT_DESC:
    'Create, edit, delete and view workspaces on the platform.',
  USERS_MANAGEMENT_DESC: 'Create, edit and delete accounts.',
  ROLES_MANAGEMENT_DESC: 'Create, edit and delete account roles.',
  APP_TEMPLATES_VIEW_DESC: 'View the platform App Store.',
  APP_TEMPLATES_MANAGEMENT_DESC:
    'Manage the platform App Store and the lifecycles (review/release/removal) of cloud native applications.',
  PLATFORM_SETTINGS_MANAGEMENT_DESC: 'Manage platform settings',
  ACCOUNT_ROLE_DESC:
    'The role of an account defines the permissions of the account on the platform.',
  ACCOUNT_ROLE_CREATE_DESC:
    'The role of an account defines the permissions of the account on the platform.',
  PIPELINES_MANAGEMENT_DESC:
    'Create, edit and delete DevOps project pipelines.',
  PIPELINES_VIEW_DESC: 'View DevOps project pipelines and download artifacts.',
  CREDENTIALS_MANAGEMENT_DESC: 'Create, edit and delete project credentials.',
  CREDENTIALS_VIEW_DESC: 'View and use credentials.',
  DEVOPS_ROLES_VIEW_DESC: 'View DevOps project roles.',
  DEVOPS_ROLES_MANAGEMENT_DESC:
    'Create, edit and delete DevOps project roles except preset roles.',
  DEVOPS_MEMBERS_VIEW_DESC: 'View DevOps project members.',
  DEVOPS_MEMBERS_MANAGEMENT_DESC:
    'Invite, edit and remove DevOps project members.',
  DEVOPS_SETTINGS_DESC:
    'Manage DevOps project settings and edit DevOps project information.',

  CLUSTER_MEMBERS_MANAGEMENT_DESC: 'Invite, edit and remove cluster members.',
  CLUSTER_MEMBERS_VIEW_DESC: 'View cluster members.',
  CLUSTER_ROLES_MANAGEMENT_DESC:
    'Create, edit and delete cluster roles except preset roles.',
  CLUSTER_ROLES_VIEW_DESC: 'View cluster roles.',

  NETWORK_POLICIES_MANAGEMENT_DESC:
    'Create, edit and delete cluster network policies.',
  NETWORK_POLICIES_VIEW_DESC: 'View cluster network policies.',
  STORAGECLASSES_VIEW_DESC: 'View storage classes in a cluster.',
  STORAGECLASSES_MANAGEMENT_DESC:
    'Create, edit and delete storage classes and set the default storage class.',
  VOLUME_SNAPSHOTS_VIEW_DESC: 'View volume snapshots.',
  VOLUME_SNAPSHOTS_MANAGEMENT_DESC: 'Create, edit and delete volume snapshots.',
  CLUSTER_MONITORING_VIEW_DESC:
    'View cluster physical resources and monitoring data of application resources.',
  APPLICATION_WORKLOADS_VIEW_DESC:
    'View applications, Services, workloads, tasks, grayscale releases and image builder tasks in a project.',
  APPLICATION_WORKLOADS_MANAGEMENT_DESC:
    'Create, edit and delete applications, Services, workloads, tasks, grayscale releases and image builder tasks in a project.',
  VOLUMES_VIEW_DESC: 'View project volumes.',
  VOLUMES_MANAGEMENT_DESC: 'Create, edit and delete project volumes.',
  SECRETS_VIEW_DESC: 'View project Secrets.',
  SECRETS_MANAGEMENT_DESC: 'Create, edit and delete project Secrets.',
  CONFIGMAPS_VIEW_DESC: 'View project ConfigMaps.',
  CONFIGMAPS_MANAGEMENT_DESC: 'Create, edit and delete project ConfigMaps.',
  SERVICEACCOUNT_MANAGEMENT_DESC:
    'Create, edit and delete project service accounts.',
  SERVICEACCOUNT_VIEW_DESC: 'View project service accounts.',

  CUSTOM_MONITORING_VIEW_DESC:
    'Grant permission to view custom monitoring data',
  CUSTOM_MONITORING_MANAGEMENT_DESC:
    'Create and manage custom monitoring data.',

  ALERTING_POLICIES_VIEW_DESC: 'View alerting policies.',
  ALERTING_POLICIES_MANAGEMENT_DESC:
    'Create, edit and delete alerting policies.',
  ALERTING_MESSAGES_VIEW_DESC: 'View alerting messages.',
  ALERTING_MESSAGES_MANAGEMENT_DESC: 'Comment on and delete alerting messages.',

  PROJECT_ROLES_VIEW_DESC: 'View project roles.',
  PROJECT_ROLES_MANAGEMENT_DESC:
    'Create, edit and delete project roles except preset roles.',
  PROJECT_MEMBERS_VIEW_DESC: 'View project members.',
  PROJECT_MEMBERS_MANAGEMENT_DESC: 'Invite, edit and remove project members.',
  PROJECT_SETTINGS_DESC:
    'Manage project settings, including Internet access, network policies, resource quotas, and log collection.',
  PROJECTS_MANAGEMENT_DESC: 'Create, edit and delete projects in a workspace.',
  PROJECTS_CREATE_DESC:
    'Create projects. The creator of a project is the project administrator.',
  PROJECTS_VIEW_DESC: 'View projects in a workspace.',
  FEDERATED_PROJECTS_MANAGEMENT_DESC:
    'Create, edit and delete multi-cluster projects in a workspace.',

  DEVOPS_MANAGEMENT_DESC:
    'Create, edit and delete DevOps projects in a workspace.',
  DEVOPS_CREATE_DESC:
    'Create DevOps projects. The creator of a DevOps project is the DevOps project administrator.',
  DEVOPS_VIEW_DESC: 'View all DevOps projects in a workspace',

  WORKSPACE_GROUPS_VIEW_DESC:
    'View the structure and members of an organization.',
  WORKSPACE_GROUPS_MANAGEMENT_DESC:
    'Manage the structure, members, and authorization of an organization.',
  WORKSPACE_ROLES_VIEW_DESC: 'View workspace roles.',
  WORKSPACE_ROLES_MANAGEMENT_DESC:
    'Create, edit and delete workspace roles except system preset roles.',
  WORKSPACE_MEMBERS_VIEW_DESC: 'View workspace members.',
  WORKSPACE_MEMBERS_MANAGEMENT_DESC:
    'Invite, edit and delete workspace members',
  WORKSPACE_APP_REPOS_VIEW_DESC: 'View app repository lists.',
  WORKSPACE_APP_REPOS_MANAGEMENT_DESC:
    'Create, edit and delete app repositories.',
  WORKSPACE_APP_TEMPLATES_VIEW_DESC: 'View workspace app templates.',
  WORKSPACE_APP_TEMPLATES_MANAGEMENT_DESC:
    'Upload, edit and delete workspace app templates, and release and delete apps in the platform App Store.',
  WORKSPACE_SETTINGS_DESC: 'Manage workspace settings.',

  ROLE_PLATFORM_ADMIN:
    'Administrator who can manage all resources on the platform.',
  ROLE_PLATFORM_REGULAR:
    'Regular user who has no access to any resources before joining a workspace or cluster.',

  ROLE_CLUSTER_ADMIN:
    'Administrator who has full control over all resources in the cluster.',
  ROLE_CLUSTER_VIEWER: 'Viewer who can view all resources in the cluster.',
  ROLE_USERS_MANAGER: 'User manager who can manage all users on the platform.',
  ROLE_WORKSPACES_MANAGER:
    'Workspace manager who can manage all workspaces on the platform.',

  ROLE_WORKSPACE_ADMIN:
    'Administrator who has full control over all resources in the workspace.',
  ROLE_WORKSPACE_REGULAR:
    'Regular user who cannot create projects and DevOps projects.',
  ROLE_WORKSPACE_VIEWER: 'Viewer who can view all resources in the workspace.',
  ROLE_WORKSPACE_SELF_PROVISIONER:
    'Regular user who can create projects and DevOps projects.',

  ROLE_PROJECT_ADMIN:
    'Administrator who has full control over all resources in the project.',
  ROLE_PROJECT_REGULAR:
    'Regular user who can manage resources other than users and roles in the project.',
  ROLE_PROJECT_VIEWER: 'View who can view all resources in the project.',
  ROLE_PROJECT_OPERATOR:
    'Operater who can manage resources other than users and roles in the project.',

  ROLE_DEVOPS_ADMIN:
    'Administrator who has full control over all resources in the DevOps project.',
  ROLE_DEVOPS_REGULAR:
    'Regular user who can manage resources other than users and roles in the DevOps project.',
  ROLE_DEVOPS_VIEWER:
    'Viewer who can view all resources in the DevOps project.',
  ROLE_DEVOPS_OPERATOR:
    'Operator who can create pipeline credentials in the DevOps project.',

  NO_AUTHORIZED_USERS: 'No user is bound to this role.',

  RULE_RELATED_WITH:
    'The permission cannot be deselected because {resource} depends on it.',
  RULE_RELATED_WITH_PLURAL:
    'The permission cannot be deselected because {resource} depend on it.',
}
